The present invention relates to protocol testers, and more particularly to a decoding device for analyzing communication protocols and to a method for setting up such a decoding device.
In communication technology communication between several participants takes place according to so-called communication protocols, i.e., sets of rules that are agreed upon for the communication which the communication facilities taking part in the communication must observe. For monitoring communication networks, and particularly for testing communication networks following the replacement of a communication instrument or the extension of the network by further communication instruments, tests to ensure the functioning of the communication network or to render support in trouble-shooting are carried out using protocol testers, especially before commissioning in order to avoid operational failures.
Such protocol testers require a decoding device that allows the protocol testers to apply the particular communication rules to the data picked up or received at a terminal unit so as to decode the data for further processing. Because of the frequently changing protocols to be analyzed, particularly with reference to the equipment and/or manufacturers of specific or proprietary protocols, such decoding devices have to be designed to be as flexible as possible, and thus usually are realized in software. Such decoding software is particularly flexible if it is generic, i.e., programmed to fit many protocols. The protocol descriptions required at any point in time with respect to a specific application are loaded into the generic decoding software. As shown in FIG. 1 protocol descriptions A-X are loaded into a known generic decoding device. Then coded data are supplied at an input and decoded data are available for further processing at an output.
The disadvantage of this generic decoding software approach is that the software is not as efficient as specific software adapted especially for the existing protocol. In particular the disadvantages relate to run times which impact realtime applications. This is because the loaded protocol descriptions have to be interpreted by the generic decoding software. Such generic decoding software has only a limited set of commands for the protocols to be loaded. When a new protocol description is loaded into the generic decoder, it may happen that the set of available commands does not allow the expression of certain rules of the new protocol description. This requires modification of the generic decoder, resulting in considerable maintenance and modification effort. This is due to the fact that the continual inclusion of new protocols makes the generic decode software become very complex, and extensions of the decoder software may result in parts that have previously functioned to suddenly not work anymore in the manner intended.
The alternative, as shown in FIG. 2, is to program a specific decoder for the protocol or protocols to be analyzed, which as a result allows both rapid and clear analysis. However for each new protocol, and particularly the most diverse protocol dialects, a completely new software decoder has to be programmed, resulting in a great deal of effort and hence in high costs.
In other words a generic decoder into which protocol descriptions may be loaded may be likened to a processor which, while not being designed specifically for any particular application, processes everything, although slowly. Whereas a specific decoder may be likened to a processor that was designed for a specific application, i.e., the program to be executed is cast in concrete.
What is desired is a decoding device that works as fast as possible while being maintenance friendly and clearly laid out.